This invention relates to systems and methods for error recovery and more specifically to a system and method for recovering data using a progression of differing techniques.
Currently, when errors are detected on a storage medium or on a transmission line, an attempt is usually made to correct the error or to reread the data in an effort to determine what the valid data should be. On CD-ROMS, the speed can be varied so that the data is read slower thereby increasing the chance that the data will be able to be read properly. This is one approach. However, there are many reasons why data is found to be in error. Errors can be generated by a number of different trouble events, such as, by way of example, dirt, scratches of the surface, wobble of the plane of the disc, pits, bits with ambiguous clocks (bit length) and surface imperfections, and even bits garbled in the transmission from one place (such as the read head) to another place (such as a checking device).
Some problems are related to how well the CD disc (or other movable surface) is balanced. If the disc is not very well balanced, it will move around and the data readers will have problems focusing on the proper data area. Contamination to the disc can cause problems as well. For example, CDs typically are not covered and thus are exposed to the environment. Fingerprints, dirt and scratches can cause problems for reading data.
In the prior art, as discussed, systems slow down and retry if they detect a number of errors. Sometimes error correction techniques are used to generate new acceptable data. Sometimes this is not possible, either because of the type of data or because the number of errors are too great.
When error correction, such as the Crossed Interleaved Reid-Solomon Code (CIRC), does not work, slowing the disc can reduce wobble and allow the read head to position properly. In some situations, some systems simply do not yield the correct data. In other systems, such as graphics, the data is presented with the failed data bit (or bits missing) allowing the user to go on with a slight defect in the graphics. In other situations, the program simply stops running and the user cannot go on with his/her work.
Thus a need exists in the art for a system of error recovery that allows an end user to recover as much valid data as possible under varying error causing events.
A further need exists in the art for such a system of data recovery that is efficient in time and which operates in substantially real time and which allows for the maximum recovery of faulty data.
The present invention relates to a system and method for recovering data from an optical media. In particular, the system and method institute a hierarchical series of data detection techniques designed to correct a data integrity fault associated with said optical media. Additionally, the system and method, when instituting the hierarchical series of techniques, first adjusts focal length when a pattern of other detected integrity faults has been previously detected.